This invention relates in general to printers and, more particularly, to a system and method for sharing printers on a network.
Often printers are shared on a network by more than one print client. A print client is any machine, device, or computers that sends a print job to a printer. In order for a print client to send a print job to a printer, the print client must first be set up to use the printer. Setting up a print client to use a printer involves adding to the print client a print queue for the printer and ensuring the print client has all necessary drivers for the printer.
When many printers are available on a network, it is often desirable for each print client to be able to choose among several printers when sending a print job. However, since each print client tends to use only a few of the available printers, setting up each print client to use all of the available printers is usually unnecessary. Typically, each print client is set up for only a few of the available printers. It is often convenient to set up print clients physically located near one another to use the same few printers.
Conventionally, when a printer is added, replaced, or removed from a network, each print client impacted by the change must be updated manually. Impacted print clients are those which are set up to use a replaced or removed printer and those which will be set up to use an added printer. Updating the print client includes ensuring that the print client has a print queue for the printer and the print client has all necessary drivers for the printer. Updating each impacted print client manually is time consuming and potentially error prone.
According to principles of the present invention, one or more printers on a network are grouped together to form a printer group. A printer group server contains a database of the printer groups on the network. The printer group database includes a list of printers assigned to each printer group in the database. The printer group server communicates with a printer group client and a print server. The printer group client subscribes to one or more of the printer groups. The printer group client resides on a print client device and manages a set of print queues on the print client device. Each printer queue represents one of the printers in the printer groups to which the printer group client subscribes. A printer group is updated by making changes to the printers in the printer group and updating the printer group database to reflect the changes. A change in the printer group database initiates a change in the print queues managed by the printer group client for printer group clients that subscribe to the updated printer group.
According to further principles of the present invention, an operating system of the print client is discovered and only printers with drivers that support an operating system matching the print client""s operating system are presented to the print client for subscription.
Other objects, advantages, and capabilities of the present invention will become more apparent as the description proceeds.